package es.cea.carritocompra.model;

import java.util.HashMap;
import java.util.Map;

import es.cea.carritocompra.excepciones.StokExcepcion;

public class CarritoCompra {

	Map<Producto, Integer> productosEnCesta = new HashMap<Producto, Integer>();

	public void addProducto(Producto producto1) throws StokExcepcion{

		if (productosEnCesta.containsKey(producto1)) {
			System.out.println("ya existe el producto: " + producto1.nombre);
			Integer cantidad = productosEnCesta.get(producto1);
			
			cantidad++;
			
			if(cantidad>producto1.stock) throw new StokExcepcion();
			
			productosEnCesta.put(producto1, cantidad);
		} else{
			if(1>producto1.stock) throw new StokExcepcion();

			productosEnCesta.put(producto1, 1);
		}
	}

	public int getCantidad(Producto producto1) {
		return productosEnCesta.get(producto1);
	}

	public void quitar(Producto producto1) {
		Integer cantidad = getCantidad(producto1);
		cantidad--;
		if (cantidad == 0)
			productosEnCesta.remove(producto1);
		else
			productosEnCesta.put(producto1, cantidad);

	}

}
